iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 17
0
AI & Data

Knock Knock! Deep Learning系列 第 17

Day 16 / DL x NLP / NLP 總結與發展

  • 分享至 

  • xImage
  •  

這篇是 DL x NLP 的最後一篇,下一個子系列是 DL x CV,也是做 machine learning 的人最想擠進的一個熱門領域。

我們簡單總結這個子系列學的東西、沒有篇幅能介紹的 NLP tasks、還有一些 NLP 的發展方向。

總結

從 2013 年 Word2Vec 的興起,以及和 RNN 做結合的架構,讓 NLP 領域搭上了 deep learning 的熱潮開始蓬勃發展。

人們的生活也有了改變。最知名的 NLP project 之一莫過於 Google 翻譯,整個 model 在 2016 年翻新成 Seq2Seq 後,顯而易見的能力提升讓大家對 Google 翻譯從參考參考到日常生活中的仰賴。

而之後 transformer 的出現更打破了 NLP 搭配 RNN 的既定架構,讓 NLP model 的訓練也能快速有效。BERT 更是簡單建立於 transformer 之上即能有多項 state-of-the-art result,再次把 NLP 帶入新紀元。

NLP 還有很多有趣的應用可以探索,也還留有很多還沒有完全解決的問題。我們來簡單看一下 NLP 還有哪些發展。

NLP Tasks

NLP 相關應用太多了,我自己簡單分成幾個領域:

  • Semantics
    • Word / Sub-Word / Sentence Embedding
  • Relative Semantics
    • Paraphrase Detection:判斷兩個句子是不是換句話說
    • Entailment:A 句是不是 B 句的結果
  • Text generation
    • Natural Language Generation (NLG)
    • Question Answering
    • Machine Translation
    • Text Summarization:為文章做總結
  • Natural Language with Vision
    • Optical Character Recognition (OCR):把圖片中的字轉成文字
    • Image Captioning:為圖片加註解
  • Sequence Tagging
    • Word Segmentation:把句子中的字詞斷開,等於在字上標示 是開頭不是開頭
    • Named Entity Recognition (NER):命名實體識別,識別一個字是不是人名 / 地名 / 組織名
    • Part-of-Speech (POS) Tagging:詞性判別
    • Coreference Resolution:判定兩個字是不是在指同一個人事物
    • Sentence Parsing:建立一個句子的關聯樹
  • Classification
    • Sentiment Analysis:情緒分析
    • Topic Detection
    • Language Identification
  • Speech
    • Speech Segmentation:將一段話的不同字詞分開
    • Text-to-Speech (TTS)
    • Speech Style Transfer:把你的聲音換成我的
  • Evaluation methods
    • Machine Translation evaluation
    • Natural language evaluation:個人覺得超重要,怎麼檢驗 AI 說的話的品質
  • And many others

有興趣開始的可以挑幾個來玩玩,挑幾篇新一點的 paper 讀讀看。

NLP 發展

最後來看看 NLP 有哪些難題。

Fairness Research in NLP

NLP 需要向現有的 corpus 學習,但他們都存在 bias。如何確保 AI 不會學到這些 bias,或不會被這些 bias 的存在影響學習,是個很重要的課題。

我們來看一些例子:

gender bias
—— Google search 的結果 "female doctor" 是 "male doctor" 的兩倍。大家預設 "doctor" 的性別是男生嗎?[1]

human reporting bias
—— 文字中出現 "murdered"(殺人) 的頻率遠高於 "blinked"(眨眼),並不代表在現實世界中總殺人次數比眨眼次數多。[1]

selection bias
—— 世界上講不同英文的地方很多,我們 train 的 English model 能代表所有的英文嗎?[1]

因為我們訓練的 model 很多都是基於 real-world data,這些 model 很可能也會學習到人類社會中的 bias。而我們的目標是不要讓這些 model 放大這些 bias。

[1] 中還提到了許多 bias 的例子,非常有趣,推薦大家看看。

Low Resource NLP

Data 一直是訓練一個好 model 很重要甚至最重要的元素。但有些時候不是所有 task 都有足夠的 data 可以使用。怎麼樣用少量 data 也能訓練出好的 model 也是一個難題。

其實我們也看過一些解法:

  • Unsupervised / semi-supervised learning
  • Transfer learning
  • Domain alignment

有興趣研究的可以參考 [2]。

Interpretability

Neural network 為人詬病的一直是 low interpretability,也就是你不太能解釋他學到了什麼,或是哪個因素讓 model 這麼好或這麼差。這會造成改進架構上的困難,也會降低 model 的 reliability。

系列中我們也一直有提到一些讓 model 更容易解釋的方法:

  • Embedding visualization
  • Attention

而為了得到更多解釋,還可以選擇:

  • Ablation study:把 model 裡的東西一個一個拿掉,比較 performance
  • Architecture modification:改一下 model 看結果是不是會被影響
  • Breaking the model:小改一下 input,看 output 會不會受影響

這些分析方法都對 train 出一個更好的 model 很有幫助。

[3] 可以參考更多!

參考資料

  1. CS224n Guest Lecture Slides: Fairness and Inclusion in AI
  2. CS224n Guest Lecture Slides: Recent Advances in Low Resource Machine Translation
  3. CS224n Lecture Slides: Analysis and Interpretability of Neural NLP

上一篇
Day 15 / DL x NLP / 心有不甘的 Project Talk —— An Exploration in L2 Word Embedding Alignment
下一篇
Day 17 / DL x CV / 從 ImageNet 發起的 Data 大戰
系列文
Knock Knock! Deep Learning31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言